package tutorial;

import tutorial.dto.CalcResultDto;

/**
 * RPCの対象となるCalcServiceのインターフェース。<br>
 * (プロキシを使ってRPCを行う場合に必要となる)<br>
 */
public interface CalcServiceInterface {
	//==========================================================
	//メソッド

	//_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
	//抽象メソッド

	/**
	 * 足し算を行います。
	 *
	 * @param num1 数値1
	 * @param num2 数値2
	 * @return 計算結果
	 */
	public int addition(int num1, int num2);

	/**
	 * 引き算を行います。
	 *
	 * @param num1 数値1
	 * @param num2 数値2
	 * @return 計算結果
	 */
	public int subtraction(int num1, int num2);

	/**
	 * かけ算を行います。
	 *
	 * @param num1 数値1
	 * @param num2 数値2
	 * @return 計算結果
	 */
	public int multiplication(int num1, int num2);

	/**
	 * 割り算を行います。
	 *
	 * @param num1 数値1
	 * @param num2 数値2
	 * @return 計算結果
	 */
	public int division(int num1, int num2);

	/**
	 * 四則演算をまとめて行います。
	 *
	 * @param num1 数値1
	 * @param num2 数値2
	 * @return 計算結果
	 */
	public CalcResultDto operation(int num1, int num2);
}
